package cc.mrbird.febs.accounting.service;

import cc.mrbird.febs.accounting.entity.Subject;

import cc.mrbird.febs.common.entity.QueryRequest;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 *  Service接口
 *
 * @author baoyinlei
 * @date 2021-09-28 23:26:51
 */
public interface ISubjectService extends IService<Subject> {
    /**
     * 查询（分页）
     *
     * @param request QueryRequest
     * @param subject subject
     * @return IPage<Subject>
     */
    IPage<Subject> findSubjects(QueryRequest request, Long projectId);

    /**
     * 查询（所有）
     *
     * @param subject subject
     * @return List<Subject>
     */
    List<Subject> findSubjects(Long projectId);

    /**
     * 新增
     *
     * @param subject subject
     */
    void createSubject(Subject subject);

    /**
     * 修改
     *
     * @param subject subject
     */
    void updateSubject(Subject subject);

    /**
     * 删除
     *
     * @param subjectId subjectId
     */
    void deleteSubject(String subjectId);
}
